package com.ruoyi.system.domain;

import java.util.List;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 论文对象 work_paper
 * 
 * @author ruoyi
 * @date 2024-07-10
 */

@Data
public class WorkPaper extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 编号 */
    private Long id;

    /** 论文题目 */
    @Excel(name = "论文题目")
    private String title;

    /** 作者id */
    @Excel(name = "作者id")
    private Long paperWinnersId;

    /** 论文类型 */
    @Excel(name = "论文类型")
    private Long paperType;

    /** 论文等级 */
    @Excel(name = "论文等级")
    private String paperGrade;



    /** 发表/出版时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "发表/出版时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date publicationTime;

    /** 发表刊物/论文集 */
    @Excel(name = "发表刊物/论文集")
    private String publicationLournals;

    /** 收录类别 */
    @Excel(name = "收录类别")
    private Long lnclusionCategory;

    /** 检索 */
    @Excel(name = "检索")
    private String searching;

    /** 学科门类（1:社科类，2：科技类） */
    @Excel(name = "学科门类", readConverterExp = "1=:社科类，2：科技类")
    private Long subjectCategoryId;

    /** 一级学科 */
    @Excel(name = "一级学科")
    private String fistSubject;

    /** 项目来源 */
    @Excel(name = "项目来源")
    private String projectSource;

    /** 数据来源 */
    @Excel(name = "数据来源")
    private String dataSource;

    /** CN号 */
    @Excel(name = "CN号")
    private String cnNumber;

    /** 期（卷） */
    @Excel(name = "期", readConverterExp = "卷=")
    private String lssueVolume;

    /** 同意时间（秒） */
    @Excel(name = "同意时间", readConverterExp = "秒=")
    private Date agreeTime;

    /** 附件信息 */
    @Excel(name = "附件信息")
    private String filesUrl;

    /** 新增人id */
    @Excel(name = "新增人id")
    private Long dataAddUserId;

    /** 新增时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "新增时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date dataAddDate;

    /** 校级审核人id */
    @Excel(name = "校级审核人id")
    private Long dataSchoolAuditUserId;

    /** 校级审核时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "校级审核时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date dataSchoolAuditDate;

    /** 校级审核状态(0:未审核，1：校级通过，2:校级驳回) */
    @Excel(name = "校级审核状态(0:未审核，1：校级通过，2:校级驳回)")
    private Long dataSchoolAuditStatus;

    /** 院系审核人id */
    @Excel(name = "院系审核人id")
    private Long dataFacultyAuditUserId;

    /** 院系审核时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "院系审核时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date dataFacultyAuditDate;

    /** 院系审核状态（0:未审核,1:院系通过,2:院系驳回,3:机构通过） */
    @Excel(name = "院系审核状态", readConverterExp = "0=:未审核,1:院系通过,2:院系驳回,3:机构通过")
    private Long dataFacultyAuditStatus;

    /** 论文完成人信息 */
    private List<WorkPaperWinners> workPaperWinnersList;
    private Integer userId;
}
